title: Big Query - Local machine - ImportError: DLL load failed: The specified procedure could not be found
body: <p>I am not able to run my python program that executes big query.
  My python version: 3.6.0
  My pip version: 19.3.1</p>
  
  <pre><code>Traceback (most recent call last):
    File "app.py", line 2, in &lt;module&gt;
      from bqservice import query_service
    File "C:\work\python-bigquery\bqservice\query_service.py", line 1, in &lt;module&gt;
      from google.cloud import bigquery
    File "C:\work\python-bigquery\env\lib\site-packages\google\cloud\bigquery\__init__.py", line 35, in &lt;module&gt;
      from google.cloud.bigquery.client import Client
    File "C:\work\python-bigquery\env\lib\site-packages\google\cloud\bigquery\client.py", line 50, in &lt;module&gt;
      import google.cloud._helpers
    File "C:\work\python-bigquery\env\lib\site-packages\google\cloud\_helpers.py", line 33, in &lt;module&gt;
      from google.protobuf import duration_pb2
    File "C:\work\python-bigquery\env\lib\site-packages\google\protobuf\duration_pb2.py", line 5, in &lt;module&gt;
      from google.protobuf import descriptor as _descriptor
    File "C:\work\python-bigquery\env\lib\site-packages\google\protobuf\descriptor.py", line 47, in &lt;module&gt;
      from google.protobuf.pyext import _message
  ImportError: DLL load failed: The specified procedure could not be found.
  </code></pre>
  
  <p>But the same code works well when I dockerize it and run it as any service like cloud run etc.</p>
  
  <blockquote>
    <p>I have referred the post: <a href="https://stackoverflow.com/questions/20201868/importerror-dll-load-failed-the-specified-module-could-not-be-found">ImportError: DLL load failed: The specified module could not be found</a> 
    But it did not work</p>
  </blockquote>
  
  <p>Here is my code:</p>
  
  <pre><code>from flask import Flask, request, jsonify
  from bqservice import query_service
  
  
  # Init App
  app = Flask(__name__)
  
  
  @app.route('/', methods=['GET'])
  def home():
      return "Home page"
  
  
  @app.route('/match/&lt;id&gt;', methods=['GET'])
  def get_a_project(id):
      match_summary = query_service.get_match_details(id)    
      return match_summary
  
  
   # This is for debug mode on
  if __name__ == '__main__':
      app.run( port=8080, debug=True)    
  </code></pre>
  
  <p>My requirements.txt</p>
  
  <pre><code>cachetools==3.1.1
  certifi==2019.9.11
  chardet==3.0.4
  Click==7.0
  Flask==1.1.1
  google-api-core==1.14.3
  google-auth==1.7.1
  google-cloud-bigquery==1.22.0
  google-cloud-core==1.0.3
  google-resumable-media==0.5.0
  googleapis-common-protos==1.6.0
  idna==2.8
  itsdangerous==1.1.0
  Jinja2==2.10.3
  MarkupSafe==1.1.1
  protobuf==3.11.0
  pyasn1==0.4.8
  pyasn1-modules==0.2.7
  pytz==2019.3
  requests==2.22.0
  rsa==4.0
  six==1.13.0
  urllib3==1.25.7
  Werkzeug==0.16.0
  
  </code></pre>
  
  <p>This was dependencies were populate by pip install as I added only Flask and google-bigquery</p>
  
  <p>My dao:</p>
  
  <pre><code>from google.cloud import bigquery
  from os import environ
  from baseball import matches
  
  
  def get_match_details(gameId):
  
      client = bigquery.Client()
  
      query_job = client.query("select * from `bigquery-public-data.baseball.schedules` where gameid= '"+gameId+"'")
  
      results = query_job.result()  # Waits for job to complete.
  
  
      for row in results:  # API request - fetches results
          requested_match = matches.Matches(row["homeTeamName"], row["awayTeamName"], row["dayNight"], row["startTime"], row["attendance"], row["duration"])
  
  
  
      return requested_match.get_details()
  
  
  </code></pre>
  
  <p>Any help?</p>