Previously, I scraped behance.net using graphQL. Using the same steps, I am trying to scrape job search results from LinkedIn as they are also using graphQL. I could write a Python request for behance.net as
payload = {
"query": "n query GetProjectSearchResults($query: query, $filter: SearchResultFilter, $first: Int!, $after: String) {n search(query: $query, type: PROJECT, filter: $filter, first: $first, after: $after) {n pageInfo {n hasNextPagen endCursorn }n nodes {n ... on Project {n __typenamen ...projectSearchFieldsn }n }n metaContent {n totalEntityCountn toolCard {n cta {n textn urln }n descriptionn links {n textn urln typen }n slugn titlen }n schoolCard {n cta {n textn urln }n descriptionn slugn }n csam {n isCSAMViolationn descriptionn helpResourcen reportingOptionn }n followableTag {n isFollowingn tag {n idn titlen }n }n }n }n }nn n fragment projectSearchFields on Project {n idn colors {n rn gn bn }n isMatureReviewSubmittedn linkedAssetsCountn namen premiumn isPrivaten publishedOnn isFoundern isFeaturedn modifiedOnn canBeAddedToMoodboardn adminFlags {n mature_lockn privacy_lockn dmca_lockn flagged_lockn privacy_violation_lockn trademark_lockn spam_lockn eu_ip_lockn }n features {n featuredOnn urln namen ribbon {n imagen image2xn image3xn }n }n slugn stats {n views {n alln }n appreciations {n alln }n comments {n alln }n }n urln fields {n labeln }n linkedAssets {n ...sourceLinkFieldsn }n sourceFiles {n ...sourceFileWithCoverFieldsn }n matureAccessn hasMatureContentn owners {n ...OwnerFieldsn images {n size_50 {n urln }n size_100 {n urln }n size_115 {n urln }n size_138 {n urln }n size_230 {n urln }n size_276 {n urln }n }n }n covers {n size_original {n urln }n size_max_808 {n urln }n size_808 {n urln }n size_404 {n urln }n size_202 {n urln }n size_230 {n urln }n size_115 {n urln }n size_original_webp {n urln }n size_max_808_webp {n urln }n size_808_webp {n urln }n size_404_webp {n urln }n size_202_webp {n urln }n size_230_webp {n urln }n size_115_webp {n urln }n }n }nn n fragment sourceFileWithCoverFields on SourceFile {n __typenamen sourceFileIdn projectIdn userIdn titlen assetIdn renditionUrln mimeTypen sizen categoryn licenseTypen unitAmountn currencyn tiern hiddenn extensionn hasUserPurchasedn descriptionn cover {n coverUrln coverXn coverYn coverScalen }n }nn n fragment sourceLinkFields on LinkedAsset {n __typenamen namen premiumn urln categoryn licenseTypen }nn n fragment OwnerFields on User {n displayNamen hasPremiumAccessn idn isFollowingn isProfileOwnern locationn locationUrln urln usernamen isMessageButtonVisiblen availabilityInfo {n availabilityTimelinen isAvailableFullTimen isAvailableFreelancen hiringTimeline {n keyn labeln }n }n creatorPro {n isActiven initialSubscriptionDaten }n }nnn ",
"variables": {"after": "NDg=", "filter": {}, "first": 48},
}
url = "https://www.behance.net/v3/graphql"
headers = {
"X-Requested-With": "XMLHttpRequest",
"X-BCP": "96ee8700-3ce5-4445-96b2-ab0e1a76a63a",
}
cookies = {
"bcp": "96ee8700-3ce5-4445-96b2-ab0e1a76a63a",
}
However, I cannot find any “query” keyword for LinkedIn’s graphQL requests as shown in the image below.
Any hint on how to create a proper Python request for this?